/**
 * @version v1.0
 * @Description:
 * @Author zhanzhongxin
 * @Date 2021/7/12 10:29
 * @Copyright 博为峰
 */
public class Person {
    public String name;
    public int age;

    /*
      构造方法：构建对象时调用的方法，初始化对象
      1.方法名必须与类名相同
      2.不能声明返回类型

      在java中，每个类至少有一个构造方法，为了保证这一点，如果用户没有
      显示定义任何构造方法，jvm将自动提供一个隐含的默认构造方法

      如果类中显示定义了一个或多个构造方法，那么默认构造方法就没有了

      构造方法和一般方法的区别
      1.语法上
      2.构造方法，对象创建时，会被调用一次
        一般方法，对象创建后，可被调用多次
      3.构造方法主要用于初始化对象
        一般方法主要用于提供功能
     */
    public Person() {
        System.out.println("...");
    }

    /*
      当成员变量和局部变量重名时，通过this区分
      this:代表当前对象（创建对象时，哪个对象调用了this所在的方法，this就代表那个对象）
     */
    public Person(String name, int age) {
        System.out.println(this);
        this.name = name;
        this.age = age;
    }

    public void eat() {
        System.out.println("吃饭");
    }
}
